/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package modelo.personas.pacientes;

import hibernate.Busqueda;
import java.util.HashMap;
import java.util.List;
import modelo.CriterioBusqueda;
import modelo.GestorModelo;

/**
 *
 * @author Raul
 */
public class GestorParentesco extends GestorModelo<Parentesco> {
    private String [] filtros = {"Nombre"};
    private HashMap<String, String> mapFiltros;

    public GestorParentesco() {
        mapFiltros = new HashMap();
        mapFiltros.put("Nombre", "nombre");
    }
    
    @Override
    public void eliminar() {
        getModelo().setEstado(ELIMINADO);
        super.actualizar();
    }

    @Override
    public void crearModelo() {
        super.setModelo(new Parentesco());
    }

    public List listarParentescos(){
        return super.listarClase(Parentesco.class);
    }

    public String[] getFiltros() {
        return filtros;
    }
    
    public List buscar(String filtro, String valor){
        Busqueda busq = new Busqueda(Parentesco.class);
        busq.addEq("estado", ACTIVO);
        busq.addIlike(mapFiltros.get(filtro), valor);
        busq.agregarOrdenAsc("nombre");
        return busq.ejecutar();
    }
    
    @Override
    public boolean noExiste() {
        Busqueda busq = new Busqueda(Parentesco.class);
        busq.addEq("nombre", getModelo().getNombre());
        return busq.ejecutar().isEmpty();
    }

    @Override
    protected Parentesco clonar(Parentesco modelo) throws CloneNotSupportedException {
        return (Parentesco) modelo.clone();
    }

    @Override
    public List buscar(CriterioBusqueda[] criterios) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

}
